#ifndef DB_H
#define DB_H
#include <mysql/mysql.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <arpa/inet.h>
#include <sys/socket.h>
#include <sys/epoll.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <pthread.h>
#include <openssl/md5.h>

//计算文件的md5码
void calculate_md5(const char *filename, char *result);

// 初始化数据库连接
int db_init(const char *host, const char *user, const char *pass, const char *dbname);
// 关闭数据库连接
void db_close();

// 用户相关
int db_store_user(const char *user, const char *salt, const char *pass); // 注册用户
int db_get_user(const char *user, char *salt, char *encrypted_pass);     // 获取用户信息


//初始化子线程的数据库
int db_init_thread(MYSQL *conn,char *username,int*key);
//注册根目录
int regfileroot(MYSQL *conn,const char *username,int *key,pthread_mutex_t *mutex);


//创建目录

//根据目录栈中的主键获得对应的目录（gets,ls）

//

#endif